package cn.edu.xmut.chen.zhlg.zhlg.message.service;


import cn.edu.xmut.chen.zhlg.common.HttpResult.Result;
import cn.edu.xmut.chen.zhlg.zhlg.message.entity.PrivateChat;
import cn.edu.xmut.chen.zhlg.zhlg.message.param.MessageQueryParam;
import cn.edu.xmut.chen.zhlg.zhlg.message.param.MessageSendParam;
import cn.edu.xmut.chen.zhlg.zhlg.message.result.ChatResult;
import cn.edu.xmut.chen.zhlg.zhlg.message.result.MessageResult;

import java.util.List;
import java.util.Map;

public interface ChatService {
    /**
     * 获取或创建私聊会话
     */
    PrivateChat getOrCreatePrivateChat(String userId1, String userId2);
    
    /**
     * 发送私聊消息
     */
    MessageResult sendMessage(MessageSendParam param);
    
    /**
     * 获取历史消息
     */
    List<MessageResult> getMessages(MessageQueryParam param);

    Result deleteChat(MessageQueryParam param);

    List<ChatResult> getMessageList(String userId, Integer pageNum, Integer pageSize);
}